package server.db;

import java.util.HashMap;

import server.container.Feuerwehr;
import server.container.Schleife;

public class FeuerwehrCache {

	private static HashMap<String, Feuerwehr> feuerwehrCache = new HashMap<>();
	
	public static Feuerwehr getFeuerwehrBySchleife(String schleife) {
		
		return feuerwehrCache.get(schleife);
	}
	
	public static Feuerwehr getFeuerwehrById(int id) {
		
		for(String key : feuerwehrCache.keySet()) {
			
			Feuerwehr fw = feuerwehrCache.get(key);
			if(fw.getId() == id) {
				return fw;
			}
		}
		throw new RuntimeException("FeuerwehrCache miss");
	}
	
	public static void addFeuerwehr(String schleife, Feuerwehr fw) {
		
		feuerwehrCache.put(schleife, fw);
	}

	public static String getFeuerwehrTypByAlarmkennung(String string) {
		
		for(String key : feuerwehrCache.keySet()) {
			
			Feuerwehr fw = feuerwehrCache.get(key);
			if(fw.containsSchleife(string)) {
				return fw.getTyp();
			}
		}
		return "Unbekannt";
	}

	public static String getAlarmTypByAlarmkennung(String string) {
		
		for(String key : feuerwehrCache.keySet()) {
			
			Feuerwehr fw = feuerwehrCache.get(key);
			if(fw.containsSchleife(string)) {
				for(Schleife s :fw.getSchleifen()) {
					
					if(s.getSchleife().equals(string)) {
						return s.getTyp();
					}
				}
			}
		}
		return "Cachefehler!";
	}

}
